/* 
 * File:   COgre3DDemo.h
 * Author: Frank
 *
 * Created on 17 de agosto de 2008, 09:31 PM
 */

#ifndef _COGRE3DDEMO_H
#define	_COGRE3DDEMO_H

class COgre3DDemo{
    // estados del juego
    static const int GAMESTATE_NONE = 0;
    static const int GAMESTATE_HUIZTEKLOGO = 1;
    static const int GAMESTATE_INITLOADING = 2;
    
    // constructor privado
    COgre3DDemo();
    
    // campos
    // puntero a instancia de esta clase
    static COgre3DDemo* m_instance;
    
    // estado del juego
    int m_currentGameState;
    
public:
    // toma la instancia de esta clase
    COgre3DDemo* getInstance();
    
    // cambia de estado
    void changeState(int nextState);
    
    // inicializadores de estados
    void initHuiztekLogoGameState();
    void initInitLoadingGameState();
    
    // actualizadores de estados
    void updateHuiztekLogoGameState();
    void updateInitLoadingGameState();
};

#endif	/* _COGRE3DDEMO_H */

